//可變參數函數的例子

#include <stdio.h>
#include <stdarg.h>

void Func(int count, ...) //可變形參函數的定義
{
	va_list ap;
	int n = count;	//使用count來表示後面的參數個數
	char *s = NULL;
	int d = 0;
	double f = 0.0;
	va_start(ap, count);	//從第二個形參開始讀取
	s = va_arg(ap, char *);	//為形參指定類型為char *
	d = va_arg(ap, int);	//為形參指定類型為int
	f = va_arg(ap, double); //為形參指定類型為double
	va_end(ap);//讀取形參結束
	printf("%s %d %f",s,d,f);
}


void main()
{
	Func(3, "Hello", 345, 788.234);
}
